Introduction
Blockchain is the technology of the year 2018. You may thank bitcoin, altcoins (cryptocurrency), and ICOs (Initial Coin Offering) for the rise of blockchain. Thousands of blockchains have already been created and are available publicly on GitHub and other open-source platforms.
According to a survey, 58% of large enterprises are thinking of a way to implement blockchain in their projects. But do they really need a blockchain?
In this article, you’ll learn the purpose of blockchain and what questions you should be asking yourself before deciding on adopting blockchain.
Why now?
Stuart Haber and W. Scott Stornetta first introduced the blockchain concept in 1991 as “a cryptographically secured chain of blocks,” which means a chain or blocks that are linked and cryptographically secured. Each block combines three items; a hash pointer to the previous block, a timestamp, and transaction data. By design, blockchains are secure and difficult to modify.
There are three key reasons why blockchain is becoming mainstream today:
- Increased digital processing power
- Rapid growth in cybercrimes
- Rise of bitcoin and cryptocurrency
Blockchain, by design, requires higher processing power than normal data computing. It is all because of the redundancy of data, distributed storage, and cryptography. Data encryption and decryption are costly affairs by nature. Today, computers have more processing power thanks to modern processors developed by NVIDIA.
Blockchain is seen as a shield against cybercrime.
Cybercrime has grown multifold in the past few years. The hacking of over a billion Yahoo accounts, the Equifax data breach, and increased ransomware damages are just a few incidents. As a matter of fact, over one million cyber threats are released every day, and by 2020, over 200 billion IoT devices will need security. Today,
Cyber Security is one of the biggest challenges for CEOs.
Bitcoin and cryptocurrency are one of the biggest reasons for the increasing popularity of blockchain. Bitcoin is a cryptocurrency created by an anonymous person named Satoshi Nakamoto, who used blockchain technology to create and distribute secure digital currency.
Fundamental problem
Today, blockchain is “the blockchain” because of Bitcoin. And if you look at the reason why Bitcoin was created, there is one word that can describe it better than anything else, i.e., TRUST. Bitcoin was created to overcome the mistrust and non-transparency of financial institutions.
Blockchain brings trust to a transactional system.
So, my first question to you is, is your system (current or new) missing the trust factor? Do you need to prove to your customers that the transactions are verified and validated by unbiased third parties?
Understand blockchain
Blockchain is only good for transactional systems. Let’s look at the definition of blockchain:
Blockchain is a technology to create and maintain a cryptographically secure, shared, and distributed ledger (a database) for transactions. Blockchain brings trust, accountability, and transparency to digital transactions.
All transactions that exist on a blockchain are shared and distributed among a network of peer-to-peer computers. Transactions are encrypted before they are stored and shared.
Let’s remove the security part from the list. I bet most enterprise systems do not want to be public, transparent, or distributed. Also, a system built on the blockchain does take not only a longer time to process transactions but also requires many more times the resources, such as processing, electricity, and data transfer. If that is the case, you don’t really need blockchain.
Here are some of the questions you need to answer.
- Is your system a database/transaction-based system?
- Are speed and performance a major need of your system?
- Does your system need to be transparent and public?
- Are you OK to distribute your data to millions of public and shared computers?
- Does your system need approval from a crowd?
- Of course, security is a major need of today’s systems, but does your current technology not provide all security options?
- Are you OK with making your project open source and the public?
Ask these questions. The following decision diagram will help you navigate through your questions and lead you to your answer.
Figure. Blockchain Decision Maker.
Challenges
Blockchain technology fundamentally has a problem, and it’s not for everyone. Saving redundant data on thousands of computers, getting approval from them, and encrypting is a lot of work. Not only that, blockchains based on Proof of Work (PoW) consensus, such as Bitcoin, can also be energy inefficient and bad for the environment. Blockchain is not for new systems.
Here are some of the key points to consider when deciding to build a blockchain.
Complicated
As we’ve seen in our earlier definition, blockchain is not easy to implement, and some concepts are still new and evolving. Data is redundant on thousands of distributed computers, and all these computers must agree and validate. All users on a blockchain are public but anonymous and can be anywhere in the world. It’s not something where you can pick up a phone and make a call. Blockchain technology isn’t easy to understand by non-technical people and requires an expert level of understanding of technology.
Public and Transparent
Not all systems need to be public and transparent. A blockchain-based system requires approval from all participating nodes. While the blockchain process is public and transparent, it could easily lead to some disagreement among participating parties and delay the processing.
Performance and Time
Performance is a major concern in a blockchain transaction. Each transaction is distributed and peer-to-peer and requires all involved parties to validate and approve the changes. Not only does the process lead to transaction performance, but the time of completion is high.
Transaction cost
Distributing data and cryptographical operations are time- and resource-consuming and lead to higher transaction costs. Blockchain transactions require a special kind of hardware and have a high demand for electricity. Normal computers aren’t sufficient to participate as blockchain nodes. You will need to spend thousands of dollars on new computers that can support blockchain transaction processing.
Open Source
Public blockchain software is open source and usually available on GitHub to download and contribute to the public.
Now you know if you really need a blockchain and want to learn about blockchain, here to start learning blockchain.
References